function [ out ] = MinSD( trgt,symList,argList )
% MinSD: 最速梯度下降法
%
% Extended description

symAmount = size(symList,2);

dfn = symList;
for i=1:symAmount
  dfn(i) = diff(trgt,symList(i));
end
dfn = subs(dfn,symList,argList);

r = sym('rand');
trgtWithR = subs(trgt,symList,argList + r * dfn);
rValue = solve(diff(trgtWithR,r),r);

out = argList + rValue * dfn;

end  % MinSD
